//缺失的整数
//思路一：先排序，再查找
#include<stdio.h>
void Swap(int* x, int* y)
{
	int tmp;
	tmp = *x;
	*x = *y;
	*y = tmp;
	return;
}
void Bubble_Sort(int arr[], int sz)
{
	int i, j, flag;
	//趟数和每趟的次数
	for (i = 0; i < sz - 1; i++)
	{
		flag = 0;//标记
		for (j = 0; j < sz - 1 - i;j++)
		{
			if (arr[j] > arr[j + 1]) {
				Swap(&arr[j], &arr[j + 1]);//传址调用
				flag = 1;
			}
		}
		if (!flag)
			break;
	}
	return;
}
int My_Find(int arr[], int sz)
{
	int ret;
	for (int i = 0; i < sz - 1; i++)
	{
		ret = arr[i + 1] - arr[i];
		if (ret != 1) {
			ret = arr[i] + 1;
			return ret;
		}
	}
	return arr[0];//注意不要让返回值与数组中的值冲突
}
int main()
{
	int sz, ret;
	int arr[] = { 5,2,6,4,1};
	sz = sizeof(arr) / sizeof(arr[0]);
	//冒泡排序——升(1,2,4,5,6)
	Bubble_Sort(arr, sz);
	ret = My_Find(arr, sz);
	if(ret!=arr[0])
		printf("%d\n", ret);
	return 0;
}